//
//  TYLanceSoldiers.h
//  AngerDragon
//
//  Created by gaotime_macbook_2 on 11-12-18.
//  Copyright 2011 __MyCompanyName__. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "cocos2d.h"

#import "TYEnemyProtocol.h"

#import "TYHurtValueProtocol.h"
#import "TYBeHurtProtocol.h"

@protocol TYStateSystemProtocol;
@protocol TYLifeSystemProtocol;
@protocol TYGuerdonSystemProtocol;
@protocol TYDisplaySystemProtocol;
@protocol TYAttackSystemProtocol;


/// 敌人模板类
@interface TYEnemyAbstractClass : CCSprite <TYEnemyProtocol> {
	
	/// 状态机系统
	id<TYStateSystemProtocol> m_state_system_protocol;
	
	/// 生命系统
	id<TYLifeSystemProtocol> m_life_system_protocol;
	
	/// 奖励系统
	id<TYGuerdonSystemProtocol> m_guerdon_system_protocol;
	
	/// 显示系统
	id<TYDisplaySystemProtocol> m_display_system_protocol;
	
	/// 攻击系统
	id<TYAttackSystemProtocol> m_attack_system_protocol;
}

/// 显示系统/攻击系统 是需要最终子类来进行挂接的, 抽象类不进行挂接
@property (nonatomic, assign) id<TYDisplaySystemProtocol> m_display_system_protocol;
@property (nonatomic, assign) id<TYAttackSystemProtocol> m_attack_system_protocol;
@end
